System for customizing a computer system

ABSTRACT

The present invention is related to a system and method for customizing a computer system. According to a first aspect of the preferred embodiment of the present invention, the method includes providing a configuration mechanism in the computer system and transmitting customization information for the computer system to the configuration mechanism. The customization information in the configuration mechanism is then retrieved by the computer system to customize the computer system. In a second aspect, a computer system includes a central processing unit (CPU), memory coupled to the CPU, and a configuration mechanism coupled to the CPU for storing customization information for the computer system, whereby the CPU retrieves during a first system boot the customization information in the configuration mechanism to automatically customize the computer system.

FIELD OF THE INVENTION

The present invention relates to computer systems and more particularlyto a method and system for customizing a computer system.

BACKGROUND OF THE INVENTION

Typically, a computer system is provided with a preconfigured operatingsystem (OS), which is then customized or configured for a specific user.The configuration of the OS generally involves assigning configurationparameters, such as a computer name, host name, host IP address, hostgateway, host subnet, etc., to the computer system, and can be performedby a reseller or dealer, on site via an automated process, or on site bythe specific user.

If performed by the reseller or dealer, the computer system's finaldestination must be known prior to the configuration process. For largecomputer system rollouts, the dealer will typically store a largequantity of computer systems and customize them as they are deployed tovarious destinations. If these computer systems are not shippedimmediately to their respective destinations, but warehoused instead,the dealer must be able to identify a particular computer system, e.g.,by serial number, for a particular destination at shipping time.Physically identifying the particular computer system among thousands ofwarehoused computer systems can be a daunting task. If the computersystem is shipped to an incorrect destination, the configurationparameters embedded in the computer system's OS will not correspond tothe destination, and the computer system will not operate correctly.

At the user's site, the system configuration can be deployed via anautomated process, e.g., by transmitting the customized OS over anetwork link. Nevertheless, this process requires network bandwidth andif the customized OS is large, e.g., 10-15 gigabytes, the transmissioncan take hours. Alternatively, the OS can be customized manually by theuser, which introduces data entry errors. Moreover, for complex programimages, it may be necessary to incur the expense of hiring a skilledconfiguration expert to handle the customization.

Accordingly, there exists a need for a method and system for customizinga computer system. The method and system should allow the computersystem to be configured quickly at the dealer or on site, and shouldhave little or no impact on network bandwidth. The present inventionaddresses such a need.

SUMMARY OF THE INVENTION

The present invention is related to a system and method for customizinga computer system. According to a first aspect of the preferredembodiment of the present invention, the method includes providing aconfiguration mechanism in the computer system and transmittingcustomization information for the computer system to the configurationmechanism. The customization information in the configuration mechanismis then retrieved by the computer system to customize the computersystem. In a second aspect, a computer system includes a centralprocessing unit (CPU), memory coupled to the CPU, and a configurationmechanism coupled to the CPU for storing customization information forthe computer system, whereby the CPU retrieves during a first systemboot the customization information in the configuration mechanism toautomatically customize the computer system.

Through aspects of the preferred embodiment of the present invention,the configuration mechanism includes an Ethernet port that is connectedto a server via a LAN. The server is able to detect when the computersystem is initially connected to the network, and transmits thecustomization information to the configuration mechanism. During a firstsystem boot, the computer system queries the configuration mechanism toretrieve the customization information stored therein.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram depicting a computer system 10 according to apreferred embodiment of the present invention.

FIG. 2 is a flowchart illustrating a process for customizing the server10 according to a preferred embodiment of the present invention.

DETAILED DESCRIPTION

The present invention relates to computer systems and more particularlyto a method and system for customizing a computer system. The followingdescription is presented to enable one of ordinary skill in the art tomake and use the invention and is provided in the context of a patentapplication and its requirements. Various modifications to the preferredembodiment and the generic principles and features described herein willbe readily apparent to those skilled in the art. Thus, the presentinvention is not intended to be limited to the embodiment shown but isto be accorded the widest scope consistent with the principles andfeatures described herein.

According to the preferred embodiment of the present invention,configuration parameters that are utilized to customize a computersystem's OS are transmitted to and stored in a configuration mechanismin the computer system. The configuration mechanism preferably is a PCIadapter that includes at least one communication port connected to anetwork. When coupled to the computer system, the configurationmechanism provides the necessary information to customize the computersystem.

Through aspects of the preferred embodiment of the present invention, ageneric computer system is shipped to the remote branch office with aconfiguration mechanism that has not yet been programmed with theconfiguration parameters. When the computer system is installed at theremote branch, a system administrator at a central office transmits theconfiguration parameters to the configuration mechanism via the at leastone communication port. The computer system then proceeds to customizeits OS via the now programmed configuration mechanism.

To describe the preferred embodiment of the present invention in moredetail, please refer now to FIG. 1, which is a block diagram depicting acomputer system 10 according to a preferred embodiment of the presentinvention. The computer system 10 preferably is a server 10, such as anxSeries™ server developed by International Business Machines of Armonk,N.Y. As is shown, the server 10 includes standard components, such as aCPU 40, memory 50, and a power source or adapter 60. Those skilled inthe art readily appreciate that the server 10 includes other standardcomponents and devices that are not illustrated in FIG. 1. The server 10also includes a remote supervisor adapter (RSA) 70, which allows asystem administrator 25 to manage the server 10 remotely via a Directorserver 20.

The RSA 70 provides continuous remote access to the server 10 regardlessof the on or off status of the server 10. In addition, the RSA 70continuously monitors critical system components for potential problemsand alerts the administrator 25 of events that can impact the systemoperation. The RSA 70 is a PCI adapter that includes a serial port 80 afor supporting system management functions through a modem, an Ethernetport 80 b for enabling system management functions over a LANconnection, and a power connector and AC adapter (not shown). Throughthe Ethernet port 80 b, the RSA 70 can be connected directly to a datanetwork or to a dedicated management LAN 15. The system managementfunctions of the RSA 70 can be exploited at any time or anywhere fromthe LAN 15, even if the server 10 has failed or is powered off.Moreover, LAN throughput allows for increased performance and additionalfunctions.

According to a preferred embodiment of the present invention, the RSA 70includes a configuration mechanism 100. The configuration mechanism 100stores customization information 110, including configurationparameters, that are used to personalize the server 10. Suchconfiguration parameters include IP address information, computer name,host name and other personalized information. While FIG. 1 shows theconfiguration mechanism 100 integrated in the RSA 70, those skilled inthe art would appreciate that the configuration mechanism 100 can alsobe a stand alone module coupled to a PCI adapter, such as the RSA 70.

To describe how the configuration mechanism 100 is utilized to customizethe server 10, please refer now to FIG. 2, which is a flowchartillustrating a process for customizing the server 10 according to apreferred embodiment of the present invention. The process begins atstep 202 when the customer installs and connects the server 10 to thenetwork 15 at the customer site. At this time, although AC power isapplied to the server 10, the server 10 has not been turned “on.” Oncethe server 10 is connected to the network 15, the Director server 20 hasthe ability to detect, i.e., discover, the new server 10 via the RSA 70.Thus, in step 204, the Director server 20 detects the new server 10.Alternatively, the configuration mechanism 100 transmits a notificationto the Director server 20 requesting the customization information whenthe server 10 is coupled to the network 15. Preferably, the connectionbetween the Director server 20 and the server's RSA 70 is an“out-of-band” communication link via the RSA's Ethernet port 80 b.

In step 206, the system administrator 25 uses the Director server 20 totransmit the customization information 10 for the server 10 to theconfiguration mechanism 100 in the server 10 via the RSA 70. Preferably,the transmission is over a dedicated LAN 15 into the RSA's Ethernet port80 b. Accordingly, the time to transmit the customization information 10to the configuration mechanism 100 is minimal. After this step, thecustomization information 110 is stored in the configuration mechanism100, and accessible by the server 10. In step 208, the server 10 isturned “on” either by the customer or by the system administrator 25 viathe Director server 20, and the server 10 begins a first bootingprocess.

During the first system boot, the server 10 queries the RSA 70, accessesthe configuration mechanism 100 and retrieves the customizationinformation 110, including the configuration parameters via step 210. Ina preferred embodiment, the customization information 110 is embeddedinto corresponding sections of a SysPrep.INF file, which is utilizedduring a SysPrep process. It is noted that while SysPrep is theapplication/supported process for MicroSoft operating systems, thecustomization information 110 can also be embedded in portions ofequivalent applications and processes used for other operating systemswell known in the art, e.g., Linux, Unix. The configuration parameters110 are then used to customize the OS and to build the final systemimage in step 212. In a preferred embodiment, the customizing step canbe performed by booting first into a DOS partition that calls the RSA 70and performs the personalization prior to loading the OS.

While the above process describes a system administrator 25 transmittingthe customization information 110 to the configuration mechanism 100,those skilled in the art will recognize that other parties can alsoperform the transmitting step as well. For instance, a dealer or even athird party shipping company can offer this service to its customers.Because the information transfer process is relatively fast and allowsthe server 10 to be personalized at the customer's site, deploymentcost, time and manpower are minimized.

Through aspects of the preferred embodiment of the present invention, acomputer system can be automatically customized at a customer siteduring the first system boot. By transmitting the customizationinformation 110 to the configuration mechanism 100 via a dedicated LAN,network bandwidth is not impacted. Moreover, because the server 10 isautomatically customized at the customer's site, there is no danger ofshipping a warehoused system that has been preconfigured to theincorrect address, or of erroneously entering the information.

Although the present invention has been described in accordance with theembodiment shown, one of ordinary skill in the art will readilyrecognize that there could be variations to the embodiment and thosevariations would be within the spirit and scope of the presentinvention. For example, the configuration mechanism can be implementedas a stand alone PCI adapter and does not necessarily require an RSA.Accordingly, many modifications may be made by one of ordinary skill inthe art without departing from the spirit and scope of the appendedclaims.

1. A computer system comprising: a central processing unit (CPU); memorycoupled to the CPU; and a configuration mechanism coupled to the CPU forstoring customization information for the computer system, wherein theCPU retrieves during a first system boot the customization informationin the configuration mechanism to automatically customize the computersystem.
 2. The computer system of claim 1, wherein the configurationmechanism is a PCI adapter that includes at least one communicationport.
 3. The computer system of claim 2, wherein the customizationinformation is download from a server to the configuration mechanism viathe at least one communication port.
 4. The computer system of claim 3,wherein the at least one communication port is an Ethernet port coupledto a LAN.
 5. The computer system of claim 4 wherein the server iscoupled to the LAN.
 6. A system for customizing a computer systemcomprising: a configuration mechanism in the computer system, whereinthe configuration mechanism is configured to receive and storecustomization information for the computer system, and wherein thecomputer is configured to retrieve the customization information in theconfiguration mechanism to automatically customize the computer system.7. The system of claim 6 wherein the configuration mechanism is a PCIadapter that is configured to plug into the computer system.
 8. Thesystem of claim 7 wherein the configuration mechanism includes at leastone communication port.
 9. The system of claim 8 wherein thecustomization information is download from a server to the configurationmechanism via the at least one communication port.
 10. The system ofclaim 9 wherein the at least one communication port is an Ethernet portcoupled to a LAN.
 11. The system of claim 10 wherein the server iscoupled to the LAN.